﻿using IQReportes.Models.Logica;
using IQReportes.Utils;
using IQReportes.ViewModels;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace IQReportes.Controllers
{
    public class HomeController : Controller
    {
        //
        // GET: /Home/
        LogicaUsuario logicaUsuario = new LogicaUsuario();
        public ActionResult Index()
        {
            if (!UsuarioController.usuarioConectado())
            {
                return (new UsuarioController()).Logout();
            }
            var instituciones = (new LogicaInstitucion()).getComboInstituciones();
            ViewBag.codInstitucion = new SelectList(instituciones, "id", "descripcion");
            ViewBag.ultimaActualizacion = (new LogicaParametro()).getDataUltimaActualizacion();
            ViewBag.puedeSubirArchivo = logicaUsuario.getPermisoSubirArchivoUsuarioActual();
            ViewBag.informacion = "Ultima actualización: para la fechael día dd/mm/yyyy";
            return View("Index");
        }
        [HttpPost]
        public ActionResult Index(HttpPostedFileBase file, string fecha, int codInstitucion, int tipoSubmit)
        {
            if (!UsuarioController.usuarioConectado())
            {
                return (new UsuarioController()).Logout();
            }
            if (!logicaUsuario.esAdministrador())
            {
                return RedirectToAction(Constantes.ACTIONINDEX, Constantes.CONTROLLERINDEX);
            }
            ResponseFileUpload respuesta = null;
            respuesta = (new LogicaSubirArchivo()).validarArchivo(file, fecha, codInstitucion,tipoSubmit);
            return Json(respuesta, JsonRequestBehavior.AllowGet);
        }
    }
}
